Certified Program Models for Eventual Consistency
نویسندگان
چکیده
We present a new approach, certified program models, to establish correctness of distributed protocols. We propose modeling protocols as programs in standard languages like C, where the program simulates the processes in the distributed system as well as the nondeterminism, the communication, the delays, the failures, and the concurrency in the system. The program model allows us to test the protocol as well as to verify it against correctness properties using program verification techniques. The highly automated testing and verification engines in software verification give us the tools needed to establish correctness. Furthermore, the model allows us to easily alter or make new design decisions, while testing and verifying them. We carry out the above methodology for the distributed key-value store protocols underlying widely used frameworks such as Dynamo [DeCandia et al. 2007], Riak [ria a] and Cassandra [cas b]. We model the read-repair and hinted-handoff table based recovery protocols as concurrent C programs, test them for conformance with real systems, and then verify that they guarantee eventual consistency, modeling precisely the specification as well as the failure assumptions under which the results hold. To the best of our knowledge, this is the first verification technique that shows correctness of these distributed protocols using mostly-automated verification.
منابع مشابه
Inferring Formal Properties of Production Key-Value Stores
Production distributed systems are challenging to formally verify, in particular when they are based on distributed protocols that are not rigorously described or fully understood. In this paper, we derive models and properties for two core distributed protocols used in eventually consistent production key-value stores such as Riak and Cassandra. We propose a novel modeling called certified pro...
متن کاملApplying change management models to the revalidation of an undergraduate Accounting & Finance programme – a study in the UK higher education
Obtaining exemptions from professional bodies’ examinations has become important for institutions in the higher education sector and there is a growing attention to provide such exemptions to graduating students. However, incorporating necessary changes to the teaching syllabus and meeting the required changes in assessments and other areas of teaching and the related syllabus, can be difficult...
متن کاملConsistency in Distributed Data Stores
This paper focuses on the problem of consistency in distributed data stores. We define strong consistency model which provides a simple semantics for application programmers, but impossible to achieve with availability and partition-tolerance. We also define weaker consistency models including causal and eventual consistency. We review COPS and GentleRain as two causally consistent data stores ...
متن کاملClosing The Performance Gap between Causal Consistency and Eventual Consistency
It is well known that causal consistency is more expensive to implement than eventual consistency due to its requirement of dependency tracking and checking for causality. To close the performance gap between the two consistency models, we propose a new protocol that implements causal consistency for both partitioned and replicated data stores. Our protocol trades the visibility latency of upda...
متن کاملFast Locks in Distributed Shared Memory Systems
Synchronization and remote memory access delays cause staggering ineeciency in most shared memory programs if run on thousands of processors. This paper introduces eecient lock synchronization using the combination of group write consistency, which guarantees write ordering within groups of processors, and eagersharing distributed memory, which sends newly written data values over fast network ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2015